GrapeCity CalendarGrid for Windows Forms 3.0J > CalendarGridの使い方 > InputManCell > GcMask型セル > 書式を設定する(CalendarGcMaskCellType) > フィールドオブジェクトによる書式設定 (CalendarGcMaskCellType) |
CalendarGcMaskCellTypeには、表示にInputManのGcMaskコントロールのフィールドオブジェクトのサブセットが提供されます。
CalendarGcMaskCellTypeでは、次の3種類のフィールドが用意されており、これらのフィールドオブジェクトを使って書式を設定することができます。
これらのフィールドオブジェクトをMaskFieldCollectionに追加するには、Addメソッドまたは、AddRangeメソッドを使用します。
次のサンプルコードは、CalendarGcMaskCellTypeに郵便番号書式を設定する例です。MaskFieldCollection.AddRangeメソッドを使用してMaskFieldCollectionにフィールドを追加しています。
Imports InputManCell = GrapeCity.Win.CalendarGrid.InputMan Dim today As DateTime = DateTime.Today Dim GcMaskCellType As New InputManCell.CalendarGcMaskCellType() ' フィールドオブジェクトを作成します。 Dim maskPatternField1 As InputManCell.MaskPatternField = New InputManCell.MaskPatternField("\D", 3, 3) Dim maskLiteralField1 As InputManCell.MaskLiteralField = New InputManCell.MaskLiteralField() Dim maskPatternField2 As InputManCell.MaskPatternField = New InputManCell.MaskPatternField("\D", 4, 4) maskLiteralField1.Text = "-" ' フィールドをコレクションに追加してセルに書式を設定します。 GcMaskCellType.Fields.AddRange(New InputManCell.MaskField() {maskPatternField1, maskLiteralField1, maskPatternField2}) GcCalendarGrid1.Content(today).Rows(1).Cells(0).CellType = GcMaskCellType GcCalendarGrid1.ScrollIntoView(today)
using InputManCell = GrapeCity.Win.CalendarGrid.InputMan; var today = DateTime.Today; var gcMaskCellType = new InputManCell.CalendarGcMaskCellType(); // フィールドオブジェクトを作成します。 InputManCell.MaskPatternField maskPatternField1 = new InputManCell.MaskPatternField("\\D", 3, 3); InputManCell.MaskLiteralField maskLiteralField1 = new InputManCell.MaskLiteralField(); InputManCell.MaskPatternField maskPatternField2 = new InputManCell.MaskPatternField("\\D", 4, 4); maskLiteralField1.Text = "-"; // フィールドをコレクションに追加してセルに書式を設定します。 gcMaskCellType.Fields.AddRange(new InputManCell.MaskField[] { maskPatternField1, maskLiteralField1, maskPatternField2 }); gcCalendarGrid1.Content[today].Rows[1].Cells[0].CellType = gcMaskCellType; gcCalendarGrid1.ScrollIntoView(today);
フィールドオブジェクトをMaskFieldCollectionから削除するには、Removeメソッドまたは、RemoveAtメソッドを使用します。
注意 セルの設定を変更した場合、変更を反映させるためにテンプレートをCalendarGridに割り当てなおす必要があります。 |
次のサンプルコードは、MaskFieldCollectionの先頭のフィールドを削除する例です。
' コレクションの先頭のオブジェクトを削除します。 Dim GcMaskCellType As GrapeCity.Win.CalendarGrid.InputMan.CalendarGcMaskCellType = DirectCast(GcCalendarGrid1(DateTime.Today)(1, 0).CellType, GrapeCity.Win.CalendarGrid.InputMan.CalendarGcMaskCellType) GcMaskCellType.Fields.RemoveAt(0)
// コレクションの先頭のオブジェクトを削除します。
GrapeCity.Win.CalendarGrid.InputMan.CalendarGcMaskCellType gcMaskCellType =
(GrapeCity.Win.CalendarGrid.InputMan.CalendarGcMaskCellType)gcCalendarGrid1[DateTime.Today][1, 0].CellType;
gcMaskCellType.Fields.RemoveAt(0);
ここでは、CalendarGcMaskCellTypeに設定可能な3種類のフィールドについて、すべてのフィールドに共通な設定項目と各フィールドに特化した設定項目にわけて解説します。
これらのプロパティは、CalendarGcMaskCellTypeで利用可能なすべてのフィールドオブジェクトに共通な設定項目です。
プロパティ | 説明 |
---|---|
BackColor |
フィールド背景色を設定します。 |
Font |
フィールドに表示される文字列のフォントを設定します。 |
ForeColor |
フィールド背景色を設定します。 |
Margin |
フィールド領域の外枠の距離を設定します。 |
Padding |
フィールド領域からテキストの表示エリアまでの距離を設定します。 |
プロパティ | 説明 |
---|---|
AutoConvert |
Patternプロパティで設定された文字種に自動で変換するかどうか設定します。 |
MaxLength |
Patternプロパティで設定されたキーワードを繰り返す最大文字数を設定します。 |
MinLength |
Patternプロパティで設定されたキーワードを繰り返す最小文字数を設定します。 |
PasswordChar |
フィールドをパスワード文字として表示するときの文字を設定します。 |
Pattern |
入力マスクを定義する正規表現のキーワード(メタ文字)を設定します。 |
PromptChar |
プロンプト文字を設定します。 |
UseSystemPasswordChar |
パスワード文字をシステムで定義された文字で表示するかどうか設定します。 |
パターンフィールドは、CalendarGcMaskCellTypeの最も特徴的な機能である入力マスクを設定するフィールドです。
パターンフィールドで最も重要なプロパティはPatternプロパティで、入力マスクを定義するためのキーワードを設定することができます。
Patternプロパティで使用可能な表現のタイプ
表現のタイプ | 説明 |
---|---|
8進数(ASCII) |
ASCII文字を表現するときだけ使用します。「\040」のように、頭に0をつけて必ず3桁の数値で表現します。 |
16進数(ASCII) |
ASCII文字を表現するときだけ使用します。「\x20」のように、\xに続いて必ず2桁の数値(頭に0を付ける)で表現します。 |
16進数(Unicode) |
すべての文字を表現できます。「\u0020」のように、\uに続いて必ず4桁の数値(頭に0を付ける)で表現します。 |
キーワード |
下表で説明するキーワード(メタ文字)です。 |
文字 |
キーワード以外の文字です。 |
Patternプロパティで使用可能なキーワード
半角 | 全角 | 説明 |
---|---|---|
\A |
\A |
大文字のアルファベットを表します。[A-Z]または[A-Z]と同等です。 |
\a |
\a |
小文字のアルファベットを表します。[a-z]または[a-z]と同等です。 |
\D |
\D |
数字を表します。[0-9]または[0-9]と同等です。 |
\B |
\B |
2進数を表します。[0-1]または[0-1]と同等です。 |
\X |
\X |
16進数を表します。[0-9A-Fa-f]または[0-9A-Fa-f]と同等です。 |
\W |
\W |
すべての英数字を表します。[a-zA-Z_0-9]または[a-zA-Z_0-9]と同等です。 |
\K |
\K |
カタカナ(促音・拗音の小書き表記あり)を表します。 |
\N |
\N |
カタカナ(促音・拗音の小書き表記なし)を表します。 |
\H |
- |
すべての半角文字を表します。 |
- |
\J |
ひらがな(促音・拗音の小書き表記あり)を表します。 |
- |
\G |
ひらがな(促音・拗音の小書き表記なし)を表します。 |
- |
\Z |
すべての全角文字を表します。 |
- |
\T |
サロゲート ペア文字を表します。 |
- |
\I |
JIS X 0208文字を表します。 |
- |
\M |
Shift JIS文字を表します。 |
- |
\V |
IVS(Ideographic Variation Sequence)文字を表します。 |
注意 半角文字と全角文字は、その文字のShift-JISコードを使って識別されます。 |
メタ文字 | 説明 |
---|---|
^ |
その後に続く文字グループの補集合を表します。 |
- |
文字の範囲を指定します。 |
\(Chr(92)) |
キーワードをリテラル文字として表示 |
以下にパターンフィールドでの書式設定の例をあげます。
Patternプロパティ | MaxLengthプロパティ | MinLengthプロパティ | 表示例 | 説明 |
---|---|---|---|---|
\Z |
0 |
50 |
あア漢1Aa |
0文字以上、50文字以下のすべての全角を表します。 |
\D |
3 |
5 |
1234 |
3文字以上、5文字以下のすべての半角数字を表します。 |
1-3,a-c,A-C |
10 |
10 |
1234 |
10文字の1,2,3,a,b,c,A,B,Cを表します。 |
A-Z |
0 |
65535 |
ABCDE |
半角大文字アルファベットを表します。\Aと同等です。 |
H^a-z |
0 |
65535 |
12ABアイウ |
小文字のアルファベットを除くすべての半角文字を表します。 |
^\T |
0 |
65535 |
あア漢1Aa |
サロゲート ぺア文字を除くすべての文字を表します。 |
リテラルフィールドは、セルに表示するリテラル文字を設定します。リテラルフィールド固有のプロパティは次のTextプロパティのみです。
プロパティ | 説明 |
---|---|
AutoConvert |
Patternプロパティで設定された文字種に自動で変換するかどうか設定します。 |
AutoDropDown |
フィールドにカレットが移動されたときに、自動でドロップダウンリストを表示するかどうか設定します。 |
DropDownEnabled |
フィールドのドロップダウン機能を有効にするかどうか設定します。 |
Items |
文字列の列挙体を設定します。 |
PromptChar |
プロンプト文字を設定します。 |
SpinIncremnet |
スピンによって列挙体を増減させる項目の数を設定します。 |